#include<stdio.h>
int s[10]= {0},a[9]= {0};
/*a:
0 1 2
3 4 5
6 7 8
s tells if a number is used*/
bool check();
void print();
int main()
{
	for(a[0]=1; a[0]<10; a[0]++)
	{
		s[a[0]]=1;
		for(a[1]=1; a[1]<10; a[1]++)
		{
			if(s[a[1]]==1)
				continue;
			s[a[1]]=1;
			for(a[2]=1; a[2]<10; a[2]++)
			{
				if(s[a[2]]==1)
					continue;
				s[a[2]]=1;
				for(a[3]=1; a[3]<10; a[3]++)
				{
					if(s[a[3]]==1)
						continue;
					s[a[3]]=1;
					for(a[4]=1; a[4]<10; a[4]++)
					{
						if(s[a[4]]==1)
							continue;
						s[a[4]]=1;
						for(a[5]=1; a[5]<10; a[5]++)
						{
							if(s[a[5]]==1)
								continue;
							s[a[5]]=1;
							for(a[6]=1; a[6]<10; a[6]++)
							{
								if(s[a[6]]==1)
									continue;
								s[a[6]]=1;
								for(a[7]=1; a[7]<10; a[7]++)
								{
									if(s[a[7]]==1)
										continue;
									s[a[7]]=1;
									for(a[8]=1; a[8]<10; a[8]++)
									{
										if(s[a[8]]==1)
											continue;
										s[a[8]]=1;
										if(check())
										{
											print();
											s[a[8]]=0;
											continue;
										}
										s[a[8]]=0;
									}
									s[a[7]]=0;
								}
								s[a[6]]=0;
							}
							s[a[5]]=0;
						}
						s[a[4]]=0;
					}
					s[a[3]]=0;
				}
				s[a[2]]=0;
			}
			s[a[1]]=0;
		}
		s[a[0]]=0;
	}
	return 0;
}
bool check(void)
{
	if( a[0]+a[1]+a[2]==15&&
	        a[3]+a[4]+a[5]==15&&
	        a[6]+a[7]+a[8]==15&&
	        a[0]+a[4]+a[8]==15&&
	        a[2]+a[4]+a[6]==15&&
	        a[0]+a[3]+a[6]==15&&
	        a[1]+a[4]+a[7]==15&&
	        a[2]+a[5]+a[8]==15  )
		return 1;
	else
		return 0;
}
void print(void)
{
	printf("%d %d %d\n%d %d %d\n%d %d %d\n\n",a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8]);
	return;
}
